1. Field
The present embodiments relate to techniques for executing plugins for web browsers. More specifically, the present embodiments relate to a method and system for safely executing plugins for web browsers using native code modules.
2. Related Art
Browser plugins are often used to extend the functionality of web browsers. For example, a browser plugin may allow web applications executing within a web browser to open documents, such as Portable Document Format (PDF) files, and/or play media, such as video or audio files. To provide added functionality to web applications, the browser plugin is typically installed as a native code library. In addition, the browser plugin is executed by the web browser when features provided by the browser plugin are requested by the web applications.
However, browser plugins may pose a security risk to the computer systems on which the browser plugins are installed. In particular, browser plugins may have the same access privileges as the host processes (e.g., web browsers) executing the browser plugins. As a result, a malicious browser plugin may make system calls that crash the computer system on which the malicious browser plugin is installed and can possibly obtain sensitive information (e.g., email addresses, passwords, etc.) from the computer system. Along the same lines, browser plugins may contain bugs and/or security vulnerabilities that may be exploited by other applications.
Hence, what is needed is a mechanism for executing browser plugins without the security vulnerabilities described above.